package cn.edu.djtu.fw.service.impl;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import cn.edu.djtu.fw.dao.MessageMapper;
import cn.edu.djtu.fw.model.Message;
import cn.edu.djtu.fw.service.MessageServiceI;

import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;

@Service("messageService")
public class MessageServiceImpl implements MessageServiceI {
	private MessageMapper messageMapper;

	public MessageMapper getMessageMapper() {
		return messageMapper;
	}

	@Autowired
	public void setMessageMapper(MessageMapper messageMapper) {
		this.messageMapper = messageMapper;
	}

	@Override
	public boolean delete(int lid) {
		try {
			messageMapper.deleteByPrimaryKey(lid);
			return true;
		} catch (Exception e) {
		}
		return false;
	}

	@Override
	public boolean update(Message message) {
		try {
			messageMapper.updateByPrimaryKey(message);
			return true;
		} catch (Exception e) {
		}
		return false;
	}

	@Override
	public boolean insert(Message message) {
		try {
			messageMapper.insert(message);
			return true;
		} catch (Exception e) {
		}
		return false;
	}

	@Override
	public Message getMessageById(int lid) {
		return messageMapper.selectByPrimaryKey(lid);
	}

	@Override
	public Map<String, Object> getAllMessage(int page, int rows, Message message) {
		try {
			PageHelper.startPage(page, rows, true);
			List<Message> messages = messageMapper.getAllMessage(message);
			Map<String, Object> messageMap = new HashMap<String, Object>();
			messageMap.put("rows", messages);
			messageMap.put("total", ((Page<Message>) messages).getTotal());
			return messageMap;
		} catch (Exception e) {
		}
		return null;
	}
}
